Grzegorz dostał właśnie odtwarzacz MP3, który ma wiele ciekawych funkcjonalności, a wśród nich blokadę klawiatury.
Jeśli tylko odtwarzacz jest nieaktywny przez ponad\;
sekund, wszystkie jego przyciski zostają zablokowane.
Jeśli blokada klawiatury jest włączona, żaden przycisk nie spełnia swojej normalnej funkcji, a gdy tylko jakikolwiek
przycisk zostaje naciśnięty, blokada zostaje wyłączona.
Dla przykładu, załóżmy że
oraz że klawiatura jest aktualnie zablokowana.
Grzegorz nacisnął przycisk
, poczekał 3 sekundy, nacisnął przycisk
,
poczekał 5 sekund, nacisnął
, poczekał 6 sekund, a następnie nacisnął
.
W tym przykładzie jedynie przyciski
oraz
zadziałały standardowo.
Zauważ, że między naciśnięciami przycisków
oraz
włączyła się blokada klawiatury.
Głośność odtwarzacza MP3 kontroluje się za pomocą przycisków + oraz -,
które odpowiednio zwiększają albo zmniejszają poziom głośności o
jednostkę.
Poziom głośności jest liczbą całkowitą między
a
.
Naciśnięcie przycisku + przy poziomie głośności
albo przycisku -
przy poziomie głośności
nie zmienia aktualnej głośności.
Grzegorz nie zna wartości parametru
. Postanowił wyznaczyć tę wartość eksperymentalnie.
Zaczynając z zablokowaną klawiaturą, wykonał sekwencję
naciśnięć przycisków + i/lub -.
Na końcu eksperymentu odczytał z wyświetlacza odtwarzacza ostateczny poziom głośności.
Niestety, zapomniał, jaka była głośność odtwarzacza przed rozpoczęciem eksperymentu.
Nieznany, początkowy poziom głośności oznaczmy przez
,
a znany, ostateczny poziom głośności oznaczmy przez
.
Masz daną wartość parametru
oraz listę naciśnięć przycisków w takiej kolejności, w jakiej naciskał je Grzegorz.
Dla każdego naciśnięcia znasz typ naciśniętego przycisku (+ lub -)
oraz liczbę sekund od początku eksperymentu do chwili, w której przycisk został naciśnięty.
Twoim zadaniem jest wyznaczenie największej możliwej, całkowitej wartości parametru
, zgodnej
z wynikiem eksperymentu.
Pierwszy wiersz wejścia zawiera trzy liczby całkowite
,
oraz
(
) pooddzielane pojedynczymi odstępami.
Każdy z kolejnych
wierszy zawiera opis jednego naciśnięcia w sekwencji:
znak "+" lub "-" oraz liczba całkowita
(
), oznaczająca liczbę sekund od chwili rozpoczęcia eksperymentu.
Możesz założyć, że chwile naciśnięć są uporządkowane oraz że wszystkie te chwile są różne
(tzn.
dla każdego
).
Możesz założyć, że
oraz
.
W testach wartych łącznie 40 punktów zachodzi
.
W testach wartych łącznie 70 punktów zachodzi
.
Jeśli
może być dowolnie duże, wypisz jeden wiersz zawierający słowo "infinity"
(bez cudzysłowów).
W przeciwnym przypadku wypisz jeden wiersz zawierający dwie liczby całkowite
oraz
oddzielone pojedynczym odstępem.
Wypisane wartości muszą spełniać warunek, że wykonawszy eksperyment z czasem włączenia blokady
, począwszy od poziomu głośności
, otrzymujemy końcowy poziom głośności
.
Jeśli jest więcej niż jedno rozwiązanie, wybierz to z nich, które maksymalizuje wartość parametru
; jeśli wciąż jest więcej niż jedno rozwiązanie, wybierz to z nich, które
maksymalizuje wartość parametru
.
(Zauważ, że zawsze istnieje co najmniej jedno rozwiązanie:
jeżeli
, to żaden z przycisków nie spełnia swojej normalnej funkcji, więc wystarczy przyjąć
).
Dla danych wejściowych:
6 4 3 - 0 + 8 + 9 + 13 - 19 - 24
poprawną odpowiedzią jest:
5 4
Dla
, przyciski spełniają następujące funkcje: odblokuj, odblokuj, +, +, odblokuj, -.
Dla dowolnego
otrzymalibyśmy
.
Zauważ, że przykładowe wyjście zawiera największą możliwą wartość parametru
.
Dla
ostatnie dwa naciśnięcia klawiszy spełnią swoje normalne funkcje, toteż nie będzie możliwe uzyskanie wartości
.
Dla danych wejściowych:
3 10 10 + 1 + 2 + 47
poprawną odpowiedzią jest:
infinity
Jeżeli
, to dla dowolnego
będzie zachodziło
.
Autor zadania: Peter Fulla.
W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem szkopul@fri.edu.pl.
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, odwiedź nasze serwery na Discordzie. Są one moderowane przez społeczność, ale członkowie zespołu wsparcia również aktywnie się tam udzielają.